(function(window,$){"use strict";var counter=0,$headCache=$("head"),oldBigText=window.BigText,oldjQueryMethod=$.fn.bigtext,BigText={DEBUG_MODE:!1,DEFAULT_MIN_FONT_SIZE_PX:null,DEFAULT_MAX_FONT_SIZE_PX:1056,GLOBAL_STYLE_ID:"bigtext-style",STYLE_ID:"bigtext-id",LINE_CLASS_PREFIX:"bigtext-line",EXEMPT_CLASS:"bigtext-exempt",noConflict:function(restore){return restore&&($.fn.bigtext=oldjQueryMethod,window.BigText=oldBigText),BigText},supports:{wholeNumberFontSizeOnly:function(){if("getComputedStyle"in window){var test=$("
").css({position:"absolute","font-size":"14.1px"}).insertBefore($("script").eq(0)),computedStyle=window.getComputedStyle(test[0],null),ret=computedStyle&&computedStyle.getPropertyValue("font-size")==="14px";return test.remove(),ret}return!0}()},init:function(){$("#"+BigText.GLOBAL_STYLE_ID).length||$headCache.append(BigText.generateStyleTag(BigText.GLOBAL_STYLE_ID,[".bigtext * { white-space: nowrap; } .bigtext > * { display: block; }",".bigtext ."+BigText.EXEMPT_CLASS+", .bigtext ."+BigText.EXEMPT_CLASS+" * { white-space: normal; }"]))},bindResize:function(eventName,resizeFunction){var timeoutId;$(window).off(eventName).on(eventName,function(){timeoutId&&clearTimeout(timeoutId),timeoutId=setTimeout(resizeFunction,100)})},getStyleId:function(id){return BigText.STYLE_ID+"-"+id},generateStyleTag:function(id,css){return $("").attr("id",id)},clearCss:function(id){var styleId=BigText.getStyleId(id);$("#"+styleId).remove()},generateCss:function(id,linesFontSizes,lineWordSpacings,minFontSizes){var css=[];BigText.clearCss(id);for(var j=0,k=linesFontSizes.length;j=maxWidth){$line.css(property,"");if(width===maxWidth)return{match:"exact",size:parseFloat((parseFloat(size)-.1).toFixed(3))};var under=maxWidth-previousWidth,over=width-maxWidth;return{match:"estimate",size:parseFloat((parseFloat(size)-(property==="word-spacing"&&previousWidth&&overmaxFontSize){newFontSize=maxFontSize;break e}lineMax=BigText.testLineDimensions($line,maxWidth,"font-size",newFontSize+j*intervals[m],intervals[m],"px",lineMax);if(typeof lineMax!="number"){newFontSize=lineMax.size;if(lineMax.match==="exact")break e;break t}}ratios.push(maxWidth/newFontSize),newFontSize>maxFontSize?(fontSizes.push(maxFontSize),minFontSizes.push(!1)):!!minFontSize&&newFontSize